---
title: 快速开始
description: 5分钟快速上手CActor框架，构建你的第一个高性能应用
category: 快速开始
order: 1
tags: [入门, 安装, 配置]
author: CActor团队
publishedAt: 2024-01-15
updatedAt: 2024-01-15
featured: true
difficulty: beginner
---

# 快速开始

欢迎使用CActor框架！本指南将帮助你在5分钟内快速上手，构建你的第一个高性能应用。

## 环境要求

在开始之前，请确保你的开发环境满足以下要求：

- **操作系统**: Linux、macOS 或 Windows
- **内存**: 至少 4GB RAM（推荐 8GB+）
- **存储**: 至少 2GB 可用空间
- **网络**: 稳定的互联网连接

## 安装CActor

### 方式一：使用包管理器安装

```bash
# Ubuntu/Debian
sudo apt update
sudo apt install cactor

# CentOS/RHEL
sudo yum install cactor

# macOS
brew install cactor
```

### 方式二：从源码编译

```bash
# 克隆仓库
git clone https://github.com/cactor/cactor.git
cd cactor

# 编译安装
make build
sudo make install
```

### 验证安装

```bash
cactor --version
# 输出: CActor v2.1.0
```

## Hello World 示例

让我们创建第一个CActor应用：

### 1. 创建项目

```bash
mkdir my-cactor-app
cd my-cactor-app
cactor init
```

### 2. 编写代码

创建 `main.cj` 文件：

```cangjie
import cactor.core.*
import cactor.net.*

// 定义Actor
class HelloActor : Actor {
    override func receive(message: Message): Unit {
        match (message) {
            case GreetMessage(name) => {
                println("Hello, ${name}!")
                sender.send(GreetResponse("Hello from CActor!"))
            }
            case _ => println("Unknown message")
        }
    }
}

// 消息定义
struct GreetMessage {
    let name: String
}

struct GreetResponse {
    let message: String
}

// 主函数
main(): Unit {
    // 创建Actor系统
    let system = ActorSystem.create("HelloSystem")

    // 创建Actor
    let helloActor = system.actorOf<HelloActor>("hello")

    // 发送消息
    helloActor.send(GreetMessage("World"))

    // 等待处理完成
    Thread.sleep(1000)

    // 关闭系统
    system.shutdown()
}
```

### 3. 运行应用

```bash
cactor run main.cj
```

输出：

```
Hello, World!
Actor system started successfully
Actor system shutdown completed
```

## 核心概念

### Actor模型

CActor基于Actor模型，每个Actor是一个独立的计算单元：

- **封装性**: Actor内部状态完全私有
- **消息传递**: Actor之间通过异步消息通信
- **容错性**: Actor失败不会影响其他Actor
- **并发性**: 数百万Actor可以并发运行

### 消息传递

```cangjie
// 定义消息
struct TransferMessage {
    let from: String
    let to: String
    let amount: Float64
}

// 发送消息
actor.send(TransferMessage("Alice", "Bob", 100.0))
```

### Actor层次结构

```cangjie
// 创建父Actor
let parent = system.actorOf<ParentActor>("parent")

// 创建子Actor
let child = parent.actorOf<ChildActor>("child")
```

## 配置系统

### 基本配置

创建 `cactor.conf` 文件：

```hocon
cactor {
  system {
    name = "MySystem"
    threads = 8
  }

  network {
    port = 8080
    host = "0.0.0.0"
  }

  logging {
    level = "INFO"
    file = "logs/cactor.log"
  }
}
```

### 性能调优

```hocon
cactor {
  performance {
    # 消息队列大小
    mailbox-size = 10000

    # 线程池配置
    dispatcher {
      type = "thread-pool"
      threads = 16
      queue-size = 1000
    }

    # 内存管理
    memory {
      heap-size = "2g"
      gc-strategy = "g1"
    }
  }
}
```

## 下一步

恭喜！你已经成功创建了第一个CActor应用。接下来你可以：

- [了解核心概念](/docs/core-concepts) - 深入理解Actor模型
- [查看API参考](/docs/api-reference) - 探索完整的API文档
- [学习金融场景](/docs/financial-scenarios) - 了解金融领域的最佳实践
- [性能优化指南](/docs/best-practices/performance) - 提升应用性能

## 获得帮助

如果遇到问题，可以通过以下方式获得帮助：

- [故障排除指南](/docs/troubleshooting)
- [社区论坛](https://community.cactor.dev)
- [GitHub Issues](https://github.com/cactor/cactor/issues)
- [官方文档](https://docs.cactor.dev)

> **提示**: 建议先完成快速开始教程，再深入学习高级特性。这样可以更好地理解CActor的设计理念。
